JU
pedido

Script Avançado Tomara Que Algum Scripter Saiba Cria-Lo

Por juanterresalmeida, 19 de set. de 2012 em Scripts

script
25
2.9k
22 de setembro de 2012 às 15:16

Aff pedido não atendido e melhor fazer assim criar monte de char em 1 conta loga todos e tira o kick do ot..... podem fecha o topico

 

Vamos la:

 

abra data/creaturescripts/scripts crie um arquivo com o nome Magebomb e bote:

 

 

local config = {

msg = "Voce logo tanto numero de players.",

maxMultiClients = 1, -- aki numero de players que vao logar

ignoreIps = {} -- nao muda isso faz que loga e nao der erro =)

}

 

function onLogin(cid)

 

if getPlayerGroupId(cid) >= config.allowGroupId then

return TRUE

end

 

local number

local playersOnline = getPlayersOnline()

 

for _, pid in pairs(playersOnline) do

local pip = getPlayerIp(pid)

if cid ~= pid and getPlayerIp(cid) == pip and not isInArray(config.ignoreIps, doConvertIntegerToIp(getPlayerIp(cid))) then

number = (number or 0) + 1

if players > config.acountmanager then

if number > config.maxMultiClients then

if getPlayerGroupId(cid) <= 1 then

if isInArray(getPlaidiotayerIp(cid)) == FALSE then

return FALSE, doPlayerPopupFYI(cid, config.msg)

if number > config.maxMullients then

end

end

end

 

return TRUE

end

 

depois em creaturescripts.xml cole:

 

<event type="login" name="Magebomb" event="script" value="magebomb.lua"/>

 

 

 

 

 

 

agora abra o lib copie um arquivo e cole isso:

 

 

function onSay(cid, words, param)

 

config = {

players= 1, -- numero de players que vai logar , tem que ser o mesmo que ta no actions

pid=getPlayerGUID(cid), -- não mecha , isso verifica os players

premium = "yes", -- se precisa ser premium pra poder usar, esse foi dificil de fazer mais eu fiz pra vc =)

storage = 9696 -- nao muda

}

 

 

if words == '!logar" or param == "/logar" then

 

 

local player = getPlayerByName(param)

local

pid = getPlayerByNameWildcard(param)

if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then

doPlayerPopupFYI(cid, "Este Jogador Não está Online Ou Não existe.")

return TRUE

end

 

 

if(config.redskull == "no") and (getCreatureSkullType(cid) == 4) then

doPlayerPopupFYI(cid,"apenas player sem red skull podem Usar Fight System.")

 

elseif (getPlayerLevel(cid) < config.level1) then

doPlayerPopupFYI(cid,"você precisa ter level " .. config.level1 .. " pra usar o fight system.")

 

elseif (getPlayerLevel(player) < config.level2 ) then

doPlayerPopupFYI(cid,"o jogador não tem level " .. config.level2 .. " para vc dar fight system.")

 

elseif(config.prot == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then

doPlayerPopupFYI(cid,"você precisa estar em protection zone pra usar o fight system.")

 

elseif(config.bat == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then

doPlayerPopupFYI(cid,"você precisa estar sem battler pra usar o fight system.")

 

elseif(config.redskull == "no") and (getCreatureSkullType(player) == 4) then

doPlayerPopupFYI(cid,"o outro player precisa estar sem red skull usar o fight system.")

 

elseif(config.prot == "yes") and (getTilePzInfo(getCreaturePosition(player)) == FALSE) then

doPlayerPopupFYI(cid,"o outro player precisa estar em protection zone pra usar o fight system.")

 

elseif(config.bat == "yes") and (getCreatureCondition(player, CONDITION_INFIGHT) == TRUE) then

doPlayerPopupFYI(cid,"o outro player precisa estar sem battler pra usar o fight system.")

 

elseif(config.premium == "yes") and (not isPremium(cid)) then

doPlayerPopupFYI(cid, "apenas players com premium account podem dar fight.")

 

elseif(config.RemoveItem == "yes") and (doPlayerRemoveItem(cid, config.item, 1) == FALSE) then

doPlayerPopupFYI(cid, "Desculpe,voce não tem 1 " .. getItemNameById(config.item) .. " para dar fight.")

doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)

 

elseif isPlayer(player) then

doPlayerPopupFYI(cid,"Voce acaba de Desafiar o Player chamado " .. getPlayerName(player) .." espere ele aceitar.")

setPlayerStorageValue(player, config.storage, 1)

doTeleportThing(cid,config.Posplayer1)

doCreatureSetSkullType(cid, 2)

end

return TRUE

end

 

 

if words == '!aceitar' or param == "!accept" then

if getPlayerStorageValue(cid,config.storage) >= 1 then

setPlayerStorageValue(cid, config.storage, -1)

doCreatureSetSkullType(cid, 2)

 

doTeleportThing(cid

doTeleportThing(cid,config

else

doPlayerPopupFYI(cid, "Desculpe,nao pode logar os players.")

end

return TRUE

end

 

if words == '!recusar' or param == "!recuse" then

if getPlayerStorageValue(cid,config.storage) >= 1 then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, ".")

setPlayerStorageValue(cid, config.storage, -1)

end

return TRUE

end

 

return TRUE

end

 

 

agora abra: data/talkactions/scripts crie um arquivo com o nome logar e bote isso:

 

 

function getFixedText(cid, text, replace)

 

 

local lowerText = string.lower(text)

local noSpaceText = string.gsub(string.gsub(string.gsub(lowerText, "%s", ""), "%p", ""),"-", "")

for w = 1, #wrongWords do

wordLen = string.len(wrongWords[w])

for p = 1, string.len(text) do

if(string.sub(lowerText, p, p+wordLen-1) == wrongWords[w]) then

text = string.sub(text, 1, p-1) .. string.rep(replace, wordLen) .. string.sub(text, p+wordLen)

end

end

end

 

if(string.lower(text) == lowerText) then

for c = 1, #wrongWords do

if(string.find(noSpaceText, string.gsub(string.gsub(wrongWords[c], "%p", ""),"-", "")) ~= nil) then

return "I want to post forbidden links.."

end

end

end

return text

end

 

--[[Channels which are not added to block:

1 - Party Channel

2 - Channel for Staff members

3 - Rule Violation Channel

4 - Channel for Counselors/Tutors

65536 - Private Chat Channel <-- Private Chat cannot be blocked with this script

]]--

 

function onSay(cid, words, param, channel)

local fixedWords = getFixedText(cid, words, replace)

 

if words ~= fixedWords and getPlayerAccess(cid) == 0 then

if getPlayerStorageValue(cid,delay[1]) > os.time() then

return doPlayerSendCancel(cid,"You are still muted for ".. getPlayerStorageValue(cid,delay[1])-os.time() .." seconds.")

end

setPlayerStorageValue(cid,delay[1],os.time()+delay[2])

if channel == CHANNEL_DEFAULT then

doCreatureSay(cid, fixedWords, TALKTYPE_SAY)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden.")

return true

elseif isInArray(trade_channels, channel) then

doPlayerSendTexvoceéumidiotatMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden on the trade channel.")

return true

elseif isInArray(blocked_channels, channel) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden.")

doPlayerSendChannelMessage(cid, getCreatureName(cid), fixedWords, TALKTYPE_CHANNEL_Y, channel)

return true

end

end

return false

end

 

agora em talkaction.xml cole:

 

 

<talkaction words="!logar" script="logar.lua" />

 

para logar fale !logar que vai apareçe quantos players voce boto no script happy.png

Vamos la:

 

abra data/creaturescripts/scripts crie um arquivo com o nome Magebomb e bote:

 

 

local config = {

msg = "Voce logo tanto numero de players.",

maxMultiClients = 1, -- aki numero de players que vao logar

ignoreIps = {} -- nao muda isso faz que loga e nao der erro =)

}

 

function onLogin(cid)

 

if getPlayerGroupId(cid) >= config.allowGroupId then

return TRUE

end

 

local number

local playersOnline = getPlayersOnline()

 

for _, pid in pairs(playersOnline) do

local pip = getPlayerIp(pid)

if cid ~= pid and getPlayerIp(cid) == pip and not isInArray(config.ignoreIps, doConvertIntegerToIp(getPlayerIp(cid))) then

number = (number or 0) + 1

if players > config.acountmanager then

if number > config.maxMultiClients then

if getPlayerGroupId(cid) <= 1 then

if isInArray(getPlaidiotayerIp(cid)) == FALSE then

return FALSE, doPlayerPopupFYI(cid, config.msg)

if number > config.maxMullients then

end

end

end

 

return TRUE

end

 

depois em creaturescripts.xml cole:

 

<event type="login" name="Magebomb" event="script" value="magebomb.lua"/>

 

 

 

 

 

 

agora abra o lib copie um arquivo e cole isso:

 

 

function onSay(cid, words, param)

 

config = {

players= 1, -- numero de players que vai logar , tem que ser o mesmo que ta no actions

pid=getPlayerGUID(cid), -- não mecha , isso verifica os players

premium = "yes", -- se precisa ser premium pra poder usar, esse foi dificil de fazer mais eu fiz pra vc =)

storage = 9696 -- nao muda

}

 

 

if words == '!logar" or param == "/logar" then

 

 

local player = getPlayerByName(param)

local

pid = getPlayerByNameWildcard(param)

if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then

doPlayerPopupFYI(cid, "Este Jogador Não está Online Ou Não existe.")

return TRUE

end

 

 

if(config.redskull == "no") and (getCreatureSkullType(cid) == 4) then

doPlayerPopupFYI(cid,"apenas player sem red skull podem Usar Fight System.")

 

elseif (getPlayerLevel(cid) < config.level1) then

doPlayerPopupFYI(cid,"você precisa ter level " .. config.level1 .. " pra usar o fight system.")

 

elseif (getPlayerLevel(player) < config.level2 ) then

doPlayerPopupFYI(cid,"o jogador não tem level " .. config.level2 .. " para vc dar fight system.")

 

elseif(config.prot == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then

doPlayerPopupFYI(cid,"você precisa estar em protection zone pra usar o fight system.")

 

elseif(config.bat == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then

doPlayerPopupFYI(cid,"você precisa estar sem battler pra usar o fight system.")

 

elseif(config.redskull == "no") and (getCreatureSkullType(player) == 4) then

doPlayerPopupFYI(cid,"o outro player precisa estar sem red skull usar o fight system.")

 

elseif(config.prot == "yes") and (getTilePzInfo(getCreaturePosition(player)) == FALSE) then

doPlayerPopupFYI(cid,"o outro player precisa estar em protection zone pra usar o fight system.")

 

elseif(config.bat == "yes") and (getCreatureCondition(player, CONDITION_INFIGHT) == TRUE) then

doPlayerPopupFYI(cid,"o outro player precisa estar sem battler pra usar o fight system.")

 

elseif(config.premium == "yes") and (not isPremium(cid)) then

doPlayerPopupFYI(cid, "apenas players com premium account podem dar fight.")

 

elseif(config.RemoveItem == "yes") and (doPlayerRemoveItem(cid, config.item, 1) == FALSE) then

doPlayerPopupFYI(cid, "Desculpe,voce não tem 1 " .. getItemNameById(config.item) .. " para dar fight.")

doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)

 

elseif isPlayer(player) then

doPlayerPopupFYI(cid,"Voce acaba de Desafiar o Player chamado " .. getPlayerName(player) .." espere ele aceitar.")

setPlayerStorageValue(player, config.storage, 1)

doTeleportThing(cid,config.Posplayer1)

doCreatureSetSkullType(cid, 2)

end

return TRUE

end

 

 

if words == '!aceitar' or param == "!accept" then

if getPlayerStorageValue(cid,config.storage) >= 1 then

setPlayerStorageValue(cid, config.storage, -1)

doCreatureSetSkullType(cid, 2)

 

doTeleportThing(cid

doTeleportThing(cid,config

else

doPlayerPopupFYI(cid, "Desculpe,nao pode logar os players.")

end

return TRUE

end

 

if words == '!recusar' or param == "!recuse" then

if getPlayerStorageValue(cid,config.storage) >= 1 then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, ".")

setPlayerStorageValue(cid, config.storage, -1)

end

return TRUE

end

 

return TRUE

end

 

 

agora abra: data/talkactions/scripts crie um arquivo com o nome logar e bote isso:

 

 

function getFixedText(cid, text, replace)

 

 

local lowerText = string.lower(text)

local noSpaceText = string.gsub(string.gsub(string.gsub(lowerText, "%s", ""), "%p", ""),"-", "")

for w = 1, #wrongWords do

wordLen = string.len(wrongWords[w])

for p = 1, string.len(text) do

if(string.sub(lowerText, p, p+wordLen-1) == wrongWords[w]) then

text = string.sub(text, 1, p-1) .. string.rep(replace, wordLen) .. string.sub(text, p+wordLen)

end

end

end

 

if(string.lower(text) == lowerText) then

for c = 1, #wrongWords do

if(string.find(noSpaceText, string.gsub(string.gsub(wrongWords[c], "%p", ""),"-", "")) ~= nil) then

return "I want to post forbidden links.."

end

end

end

return text

end

 

--[[Channels which are not added to block:

1 - Party Channel

2 - Channel for Staff members

3 - Rule Violation Channel

4 - Channel for Counselors/Tutors

65536 - Private Chat Channel <-- Private Chat cannot be blocked with this script

]]--

 

function onSay(cid, words, param, channel)

local fixedWords = getFixedText(cid, words, replace)

 

if words ~= fixedWords and getPlayerAccess(cid) == 0 then

if getPlayerStorageValue(cid,delay[1]) > os.time() then

return doPlayerSendCancel(cid,"You are still muted for ".. getPlayerStorageValue(cid,delay[1])-os.time() .." seconds.")

end

setPlayerStorageValue(cid,delay[1],os.time()+delay[2])

if channel == CHANNEL_DEFAULT then

doCreatureSay(cid, fixedWords, TALKTYPE_SAY)

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden.")

return true

elseif isInArray(trade_channels, channel) then

doPlayerSendTexvoceéumidiotatMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden on the trade channel.")

return true

elseif isInArray(blocked_channels, channel) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Link: "..words.." is forbidden.")

doPlayerSendChannelMessage(cid, getCreatureName(cid), fixedWords, TALKTYPE_CHANNEL_Y, channel)

return true

end

end

return false

end

 

agora em talkaction.xml cole:

 

 

<talkaction words="!logar" script="logar.lua" />

 

para logar fale !logar que vai apareçe quantos players voce boto no script happy.png

 

sinto-lhe dizer que não houve mudança fiz tudo certo mais quando falei !logar não aconteceu nada.

SubwatS
22 de setembro de 2012 às 15:53

sabe cara, se você fizer isso provavelmente seu ot vai ser banido do otservlist e não adiantará de nada, querer trapaciar por que no final ninguém vai entrar no server, por que você não perde seu tempo tentando criar coisas inovadoras pro seu server, coisas que atraiam players de verdade, e não jogadores falsos.

e uma pena entrar no xtibia e me deparar com esse tipo de pedido.

22 de setembro de 2012 às 16:34

mano meu ot ta com espaço para 300 players entre ele tem 5 cidades inspiradas em konoha mist sound etc soque vai te um npc pra teleporta os players pra konoha q e a city principal soque se todos forem para konoha mist sound vao fica sem nenhum player por isso qero coloca booters nas citys para atrair players n so pra city principal como para as outras tbm.

23 de setembro de 2012 às 20:53

Cara, nao sei nem oq comentar dps desse seu pedido, namoral mesmo.

23 de setembro de 2012 às 21:46

cara, cada um vais seus pedidos não gosto nem leia poupe seu tempo a vida e curta perdeu 44 seg olhando +15 escrevendo n perda seu tempo e n comente.

24 de setembro de 2012 às 11:19

cara nao é questao de tempo perdido ou nao, até porque se essa porra de script existisse, alguem poderia ter postado aqui pra tu, mais tu é um filho duma unha ignorante e que aposto que ninguém vai te ajudar. desde já, adianto o futuro deste tópico.

 

 

Your's: Ewerton Silva

24 de setembro de 2012 às 13:18

não tem respeito não???????? se eu so filho duma "não sei oque vc falo" pelo menos eu tenho mãe pra me da educação, ja vc não.

caoticC
24 de setembro de 2012 às 18:31

Cuidado ewertonsilva157 você realizou flood e ofendeu seu colega.

 

Alertado em 10%

SkyDangerousS
24 de setembro de 2012 às 18:40

porra deixa o cara.

 

ele fez um pedido que trapaceia, mas não é preciso desrespeitar o cara, apenas peça para um moderador fechar, logo que esse pedido pode ser feito apenas por bots.

24 de setembro de 2012 às 19:05

Ok intao

 

Duvida sanada podem fechar o topico